/* eslint-disable no-lone-blocks */
// eslint-disable-next-line no-lone-blocks

{ // 黑马 人资 pc端
  {
    /*
    !1、yarn  安装 node_modules 依赖包

    2、permission.js 导航守卫

    3、低版本vuex 可以在vue调试器得到 getters   yarn add vuex@3.6.2

    ~ 4、npm run lint -- --fix 可以过滤一些错误

    5、注意：core-js版本不能高 "core-js": "^3.26.1",

*/
  }

  { // 人资 pc端
    /*

    数据层
          router 路由
          store修改路由的vuex模块化

    视图层
          views

    !同步异步
          同步API:只有当前API执行完成后，才能继续执行下一个API
          console.log('before');
          console.log('after');
          异步API:当前API的执行不会阻塞后续代码的执行

         ~ 区别： 同步API可以从返回值中拿到AP执行的结果，但是异步API是不可以的只有通过回调函数调用

         ~ * async await :
                        函数前面加上了async 就变成了异步函数
                        await promise可以暂停异步函数执行 当promise对象有返回结果后  在向下执行其他函数

    !try {} catch (){}  捕获错误
          app.get('/' ,async ( req ,res ,next ) =>{
            try{
              await
            }catch(e) {
              next(e)
            }
          })

          ~ try {} catch (){} ：验证可能出错的代码 代码出错 catch会抛出错误 {只能捕获异步函数与其他同步函数}

    ! pc 人资流程
         ~ 一、先设置登录请求 异步操作本地存储  cookie持久化存储 并渲染到页面
              1.设置ajax异步操作修改mutations  存储在mutations的token值 由异步actions传入 再由mutations修改state值
              2.下cookie包 state得到token初始状态   mutations使用cookie实现持久化存储
              3.login页面 使用try{} catch{}渲染到页面

         ~ 二、 导航守卫    permission.js中
              导航前置守卫：
                          用户登录权限访问拦截 是否有token： 有token表示登录了去主页
                                              是否登录   ：  登录了就去去其他页面   未登录但在白名单就放行 不在就跳转到首页

              导航后置守卫：进度条
         ~ 三、 响应拦截器配置【只有一个作用】配置 Authorization是否携带token

         ~ 四、 设置用户信息同时  退出删除用户信息资料

    */
  }
}

{ // 黑马优点达移动端
  /*

    分支第一次提交 要加 -u
    git push -u origin user

    合并分支
    git merge 分支名

    "htmlWhitespaceSensitivity": "ignore"

        ::v-deep{ } 深度作用选择器 search

    !打包
        yarn build  打包

        ~ 命令行方式起服务器
        npm install --global http-server
        http-server
*/

}

